package miniprojet;

import java.io.Serializable;

/**
 * 
 * Représentation d'un voyageur. Un voyageur possède un nom et un prénom.
 * 
 * @author Alexis Laurent & Antoine Lavail
 * @version 2011.11.21
 */
public class Voyageur implements Serializable {

    // Attributs

    // Serialization
    static private final long serialVersionUID = 6L;

    // Le nom du voyageur
    private String nom;

    // Le prenom du voyageur
    private String prenom;

    /**
     * Constructeur d'un voyageur.
     * 
     * @param nom
     *            : le nom du voyageur.
     * 
     * @param prenom
     *            : le prenom du voyageur.
     * 
     */
    public Voyageur(String nom, String prenom) {
        super();
        this.nom = nom;
        this.prenom = prenom;
    }

    /**
     * Getter pour le nom du voyageur.
     * 
     * @return le nom du voyageur.
     */
    public String getNom() {
        return nom;
    }

    /**
     * Setter pour le nom du voyageur.
     * 
     * @param nom
     *            : le nom du voyageur.
     */
    public void setNom(String nom) {
        this.nom = nom;
    }

    /**
     * Getter pour le prenom du voyageur.
     * 
     * @return le prenom du voyageur.
     */
    public String getPrenom() {
        return prenom;
    }

    /**
     * Setter pour le prenom du voyageur.
     * 
     * @param prenom
     *            : le prenom du voyageur.
     */
    public void setPrenom(String prenom) {
        this.prenom = prenom;
    }
    
    
    /**
     * Override de la méthode equals pour comparer correctement deux voyageurs.
     * @return true si les deux voyageurs sont égaux. False sinon.
     */
    
    
    @Override
    public boolean equals(Object obj) {
        if (this.nom.equals(((Voyageur) obj).getNom())) {
            if (this.prenom.equals(((Voyageur) obj).getPrenom())) {
                return true;
            }
        }
        return false;
    }
}
